1. Technical Field
The present invention relates to an image processing apparatus and image processing method, and more particularly to the configuration of software for an image processing apparatus which includes a facsimile function.
2. Related Art
There is a related multifunction printer which includes a printing function, a scanning function, a facsimile function and the like (refer to JP-A-2002-84383). Software is installed on the multifunction printer for realizing the printing function, the scanning function, the facsimile function and the like. Although, in the event that the software is completely separated for each of these functions, it can be said that the pieces of software are highly independent of each other, the size of software is increased, and man hours for software development are also increased. It is desired to have a configuration in which the connection of the pieces of software is weak (the pieces of software are highly independent of each other) in order not only to decrease the size of software as much as possible by sharing portions thereof that can be shared among the functions but also to enhance the ease of maintenance of the software.
Let's think of a software configuration when adding anew facsimile function to a stand-alone multifunction printer including a printing function and a scanning function. Let's assume then that software for a process for reading an image stored in a memory card and causing a printing unit to print the image, a process for storing an image that a scanning unit is caused to read in a memory card and the like is configured by a module for issuing requests (for example, file opening, read, writ, file closure and the like) to read and write an image file from and on a memory card in response to an instruction from a high order (host) application and a driver module which control the access to the memory card when receiving the requests and has already been developed. Then, when adding a module for realizing a new facsimile function, it is a general consideration that a module for issuing requests of facsimile transmission, acquisition of received facsimile data, line connection, line disconnection and the like in response to instructions from the host application and a driver module for controlling a facsimile unit when receiving those requests are necessary. Incidentally, the process for saving an image that the scanning unit is caused to read for the memory card and a process for facsimile transmitting the image that the scanning unit is caused to read are common in are as where the image is inputted in an internal memory by controlling the scanning unit and the image is outputted to an output receiver from the internal memory. In addition, the process for reading an image stored in the memory card and causing the printing unit to print the image and a process for causing the printing unit to print received facsimile data are common in are as where an image is inputted in the internal memory from an input source and the printing unit is caused to print the inputted image. However, an interface that has already been developed for inputting and outputting an image in and from the internal memory is for reading and writing an image file from and on a memory card, that is for making use of a volume having a file system. Although the concept of inputting and outputting the image in and from the internal memory is common, the request to make use of the volume having the file system and the request to the facsimile unit which is not the volume having the file system are different.